﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000D3B RID: 3387
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class PlayerStatusInfo : IMessage<PlayerStatusInfo>, IMessage, IEquatable<PlayerStatusInfo>, IDeepCloneable<PlayerStatusInfo>, IBufferMessage
	{
		// Token: 0x17002AF1 RID: 10993
		// (get) Token: 0x06009801 RID: 38913 RVA: 0x001959F7 File Offset: 0x00193BF7
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<PlayerStatusInfo> Parser
		{
			get
			{
				return PlayerStatusInfo._parser;
			}
		}

		// Token: 0x17002AF2 RID: 10994
		// (get) Token: 0x06009802 RID: 38914 RVA: 0x001959FE File Offset: 0x00193BFE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return PlayerStatusInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17002AF3 RID: 10995
		// (get) Token: 0x06009803 RID: 38915 RVA: 0x00195A10 File Offset: 0x00193C10
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return PlayerStatusInfo.Descriptor;
			}
		}

		// Token: 0x06009804 RID: 38916 RVA: 0x00195A17 File Offset: 0x00193C17
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PlayerStatusInfo()
		{
		}

		// Token: 0x06009805 RID: 38917 RVA: 0x00195A1F File Offset: 0x00193C1F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PlayerStatusInfo(PlayerStatusInfo other) : this()
		{
			this.characterType_ = other.characterType_;
			this.status_ = other.status_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06009806 RID: 38918 RVA: 0x00195A50 File Offset: 0x00193C50
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PlayerStatusInfo Clone()
		{
			return new PlayerStatusInfo(this);
		}

		// Token: 0x17002AF4 RID: 10996
		// (get) Token: 0x06009807 RID: 38919 RVA: 0x00195A58 File Offset: 0x00193C58
		// (set) Token: 0x06009808 RID: 38920 RVA: 0x00195A60 File Offset: 0x00193C60
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public LobbyCharacterType CharacterType
		{
			get
			{
				return this.characterType_;
			}
			set
			{
				this.characterType_ = value;
			}
		}

		// Token: 0x17002AF5 RID: 10997
		// (get) Token: 0x06009809 RID: 38921 RVA: 0x00195A69 File Offset: 0x00193C69
		// (set) Token: 0x0600980A RID: 38922 RVA: 0x00195A71 File Offset: 0x00193C71
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public LobbyCharacterStatus Status
		{
			get
			{
				return this.status_;
			}
			set
			{
				this.status_ = value;
			}
		}

		// Token: 0x0600980B RID: 38923 RVA: 0x00195A7A File Offset: 0x00193C7A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as PlayerStatusInfo);
		}

		// Token: 0x0600980C RID: 38924 RVA: 0x00195A88 File Offset: 0x00193C88
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(PlayerStatusInfo other)
		{
			return other != null && (other == this || (this.CharacterType == other.CharacterType && this.Status == other.Status && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600980D RID: 38925 RVA: 0x00195AC8 File Offset: 0x00193CC8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.CharacterType != LobbyCharacterType.LobbyCharacterNone)
			{
				num ^= this.CharacterType.GetHashCode();
			}
			if (this.Status != LobbyCharacterStatus.None)
			{
				num ^= this.Status.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600980E RID: 38926 RVA: 0x00195B2C File Offset: 0x00193D2C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600980F RID: 38927 RVA: 0x00195B34 File Offset: 0x00193D34
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06009810 RID: 38928 RVA: 0x00195B40 File Offset: 0x00193D40
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.CharacterType != LobbyCharacterType.LobbyCharacterNone)
			{
				output.WriteRawTag(8);
				output.WriteEnum((int)this.CharacterType);
			}
			if (this.Status != LobbyCharacterStatus.None)
			{
				output.WriteRawTag(16);
				output.WriteEnum((int)this.Status);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06009811 RID: 38929 RVA: 0x00195B98 File Offset: 0x00193D98
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.CharacterType != LobbyCharacterType.LobbyCharacterNone)
			{
				num += 1 + CodedOutputStream.ComputeEnumSize((int)this.CharacterType);
			}
			if (this.Status != LobbyCharacterStatus.None)
			{
				num += 1 + CodedOutputStream.ComputeEnumSize((int)this.Status);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06009812 RID: 38930 RVA: 0x00195BF0 File Offset: 0x00193DF0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(PlayerStatusInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.CharacterType != LobbyCharacterType.LobbyCharacterNone)
			{
				this.CharacterType = other.CharacterType;
			}
			if (other.Status != LobbyCharacterStatus.None)
			{
				this.Status = other.Status;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06009813 RID: 38931 RVA: 0x00195C40 File Offset: 0x00193E40
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06009814 RID: 38932 RVA: 0x00195C4C File Offset: 0x00193E4C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 8U)
				{
					if (num != 16U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						this.Status = (LobbyCharacterStatus)input.ReadEnum();
					}
				}
				else
				{
					this.CharacterType = (LobbyCharacterType)input.ReadEnum();
				}
			}
		}

		// Token: 0x04003A59 RID: 14937
		private static readonly MessageParser<PlayerStatusInfo> _parser = new MessageParser<PlayerStatusInfo>(() => new PlayerStatusInfo());

		// Token: 0x04003A5A RID: 14938
		private UnknownFieldSet _unknownFields;

		// Token: 0x04003A5B RID: 14939
		public const int CharacterTypeFieldNumber = 1;

		// Token: 0x04003A5C RID: 14940
		private LobbyCharacterType characterType_;

		// Token: 0x04003A5D RID: 14941
		public const int StatusFieldNumber = 2;

		// Token: 0x04003A5E RID: 14942
		private LobbyCharacterStatus status_;
	}
}
